From e37ac1386f80c3af56452c8e442a4e1adbcf9b59 Mon Sep 17 00:00:00 2001 From: Julien Grall Date: Fri, 22 May 2015 17:33:39 +0200 Subject: [PATCH] use ULL for GB and MB macros On 32bit, GB(4) doesn't fit on an unsigned long. Modify MB to avoid further issue. Also, fix a couple of printf format in x86 which breaks after using unsigned long long. Signed-off-by: Julien Grall --- xen/arch/x86/apic.c | 2 +- xen/arch/x86/io_apic.c | 2 +- xen/include/xen/config.h | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/xen/arch/x86/apic.c b/xen/arch/x86/apic.c index 499e70f447..2c9ae4ec25 100644 --- a/xen/arch/x86/apic.c +++ b/xen/arch/x86/apic.c @@ -992,7 +992,7 @@ void __init init_apic_mappings(void) apic_phys = mp_lapic_addr; set_fixmap_nocache(FIX_APIC_BASE, apic_phys); - apic_printk(APIC_VERBOSE, "mapped APIC to %08lx (%08lx)\n", APIC_BASE, + apic_printk(APIC_VERBOSE, "mapped APIC to %08Lx (%08lx)\n", APIC_BASE, apic_phys); __next: diff --git a/xen/arch/x86/io_apic.c b/xen/arch/x86/io_apic.c index 6f66562b4f..7d4ee5dbcf 100644 --- a/xen/arch/x86/io_apic.c +++ b/xen/arch/x86/io_apic.c @@ -2546,7 +2546,7 @@ void __init init_ioapic_mappings(void) clear_page(__va(ioapic_phys)); } set_fixmap_nocache(idx, ioapic_phys); - apic_printk(APIC_VERBOSE, "mapped IOAPIC to %08lx (%08lx)\n", + apic_printk(APIC_VERBOSE, "mapped IOAPIC to %08Lx (%08lx)\n", __fix_to_virt(idx), ioapic_phys); idx++; diff --git a/xen/include/xen/config.h b/xen/include/xen/config.h index 6478a0aafc..f7258c7ff7 100644 --- a/xen/include/xen/config.h +++ b/xen/include/xen/config.h @@ -69,8 +69,8 @@ #define __force #define __bitwise -#define MB(_mb) (_AC(_mb, UL) << 20) -#define GB(_gb) (_AC(_gb, UL) << 30) +#define MB(_mb) (_AC(_mb, ULL) << 20) +#define GB(_gb) (_AC(_gb, ULL) << 30) #define __STR(...) #__VA_ARGS__ #define STR(...) __STR(__VA_ARGS__) -- 2.30.2